
// const autoprefixer = require("autoprefixer");
// const pxtorem = require("postcss-pxtorem");
const path = require('path')
// function resolve(dir) {
//     return path.join(__dirname, dir);
//   }

// 引入webpack
const webpack = require('webpack')
module.exports = {
    // 资源路径 
    publicPath: './',
    // 打包路径
    // outputDir: 'hemugao',
   
    // 关闭eslint检查
    lintOnSave: false,
    // 定义别名
    configureWebpack: {
        // provide the app's title in webpack's name field, so that
        // it can be accessed in index.html to inject the correct title.
        resolve: {
            
            alias: {
                "@": path.resolve(__dirname, "./src"),
                "@assets": path.resolve(__dirname, "./src/assets"),
                "@pages": path.resolve(__dirname, "./src/pages"),
                "@router": path.resolve(__dirname, "./src/router"),
                "@components": path.resolve(__dirname, "./src/components"),
            },
        },

        plugins:[
          new webpack.ProvidePlugin({
            $: "jquery",
            jQuery: "jquery",
            "window.jQuery": "jquery",
            Popper: ["popper.js", "default"]
          })
        ]

    },
    css: {
        loaderOptions: {
            // 后处理器配置
            postcss: {
                plugins: [
                    // 配置样式前缀
                    // autoprefixer(),
                    // 把px转为rem
                    // pxtorem({
                    //     rootValue: 37.5,
                    //     propList: ["*"]
                    // })
                ]
            }
        }
    },


    chainWebpack: config => {
        config.module
          .rule('md')
          .test(/\.md/)
          .use('vue-loader')
            .loader('vue-loader')
            .end()
          .use('vue-markdown-loader')
            .loader('vue-markdown-loader/lib/markdown-compiler')
            .options({
              wrapper: 'article',
              wrapperName: '123',
              raw: true,
              preventExtract: true,
              use: [
                [require('markdown-it-container'), 'tip'],
                [require('markdown-it-container'), 'warning'],
                [require('markdown-it-container'), 'danger'],
                [require('markdown-it-container'), 'details'],
              ],
            })
            // .end()
      },

      // 方式一：这种方式配置代理
      // 虽然简单，但存在两个问题，1.不能配置多个代理；2.不能灵活的控制是否走代理
      /* devServer: {
        proxy:"http://localhost:8000"
      }, */

      devServer: {
        proxy:{
          "/api":{ // 请求前缀，作用是加上它就走该请求代理，否则不走
            target:"http://192.168.1.101:5000",
            pathRewrite:{"^/api":""} , // 这里是不把请求前缀发给后端，因为这是我们前端配置的代理，后端可没有/api的url的
            // ws:true, // 用于支持websocket
            changeOrigin:true ,// 用于控制请求头中的host值，true就把后端的值发给后端，false就把本地的服务器发给后端
          }
        }
      }

}